5.3.3 APPX Application Design Manual

+ Chapter 1-1: Overview of Application Design
+ Chapter 1-2: Getting Started
+ Chapter 1-3: Data Dictionary
+ Chapter 1-4: Understanding Process Design
+ Chapter 1-5: Interprocess Communication
+ Chapter 1-6: Customizing Your Application
+ Chapter 1-7: The Documentation Facility
+ Chapter 1-8: Application Design Tools
+ Chapter 2-1: Data Dictionary Overview
+ Chapter 2-2: Data Dictionary Concepts
+ Chapter 2-3: Domains
+ Chapter 2-4: Files and Fields
+ Chapter 2-5: Work Fields
+ Chapter 3-1: Overview of APPX Processes
+ Chapter 3-2: Getting Started
+ Chapter 3-3: Process Definition
+ Chapter 3-4: Menu Processes
+ Chapter 3-5: Job Processes
+ Chapter 3-6: Input Processes
+ Chapter 3-7: Output Processes
+ Chapter 3-8: Update Processes
+ Chapter 3-9: Query Processes
+ Chapter 3-10: Inquiry Processes
+ Chapter 3-11: Status Processes
+ Chapter 3-12: Subroutine Processes
+ Chapter 3-13: Table Processes
+ Chapter 3-14: Automatic and Optional Children
+ Chapter 3-15: Using the Image Editor
+ Chapter 3-16: Using GUI Features of the Image Editor
+ Chapter 3-17: Using Event Points
+ Chapter 4-1: ILF Integration
+ Chapter 4-2: True/False Status Indicators
+ Chapter 4-3: Specifying Statements
+ Chapter 4-4: The ILF Editor
+ Chapter 4-5: The Appx ILF Debugger
- Chapter 4-6: ILF Keyword Reference
+ Chapter 4-7: Predefined Fields
+ Chapter 4-8: Runtime Subroutine's and Predefined Processes
+ Chapter 4-9: Appx Chart Director API

Chapter 4-6: ILF Keyword Reference

DELETE


The DELETE statement deletes the current record from a specified file.

  ?????   DELETE   ??? ????????
  (1)              (2) (3)

(1) T/F execution conditions
(2) Application ID
(3) File name

Using the Statement

For process types other than input, the current process control file record is implicitly read and held if a REWRITE or DELETE statement exists for the file in any event point in the process; thus, an explicit read with hold is generally not necessary. If, however, another file is read and held within the event point that contains the REWRITE or DELETE, and this READ occurs before the REWRITE or DELETE, the operating system loses the 'hold' on the process control file record. In this case, the record must then be explicitly reread and held or the rewrite/delete fails.

Note that care should be taken when deleting the current process control file record in an input process. The normal file processing for the process control file assumes that the record still exists when it needs to rewrite or delete the record.

Restrictions

The record you want to delete from a specified file must have previously been read with the Hold? specification set to 1 (hold) or 2 (recover), or the delete must be done on the record currently being held in the process control file.

For input processes, a record from the process control file must be explicitly held by a statement to delete the record.

The DELETE statement cannot be used with sequential or one-record files.

Execution Errors

In an input process, if a record is rewritten or deleted with ILF statements, a non-recoverable runtime error occurs if the input processor also attempts to rewrite or delete the record.

The DELETE statement does not modify the current true/false status indicators. If the deletion fails, a non-recoverable runtime error occurs and the process will be canceled.

Related Statements

BEG READ, END READ, READ, READNEXT, REWRITE

Example

The following example reads the CUSTOMER file and, if the customer record exists (if the read succeeds), the routine deletes that customer record

        READ     TAR CUSTOMER   HOLD 1 FT 0 BY CUSTOMER NO
  T     DELETE   TAR CUSTOMER

Application Design Manual                                         "Powered by Appx Software"

637

©2006 By APPX Software, Inc. All Rights Reserved